Closed loop power normalized timing recovery for 8 vsb modulated signals

ABSTRACT

A receiver timing error recovery loop expands the bandwidth of a received signal and determines the timing error based on the bandwidth expanded received signal.

RELATED APPLICATIONS

The present application relates to subject matter similar to the subject matter disclosed in application Ser. No. 10/278,350 filed on Oct. 23, 2002 and to the subject matter disclosed in Application Serial No. 7260 filed on ______.

TECHNICAL FIELD OF THE INVENTION

The present invention relates to timing recovery in digital receivers.

BACKGROUND OF THE INVENTION

Timing recovery is an important digital receiver function in which the frequency and phase of the receiver's sampling clock are adjusted in order to minimize inter-symbol interference as well as to compensate for possible sampling frequency drifts between the transmitter and receiver's sampling clocks. Sampling the received signal at the optimum sampling instant is important for detection purposes. By sampling the received waveform at the optimum sampling instants, a smaller probability of error in the detection stage is obtained. However, if there is a mismatch between the transmitter and receiver's clocks, the received signal will be sampled at the wrong times, which will increase the level of sampling noise (also known as timing jitter) and introduce sampling frequency drifts. Minimizing timing jitter and preventing sampling frequency drifts are two important timing recovery objectives.

A simple, non-data aided, widely used timing recovery algorithm for band-limited amplitude modulated data streams is known as the Gardner technique and is shown in FIGS. 1 and 2. FIG. 1 illustrates how a Gardner timing error detector 10 can be incorporated into the timing recovery architecture.

As shown in FIG. 1, a signal on an input 12 is sampled by a sampler 14 and the sampled signal is provided to the Gardner timing error detector 10. The Gardner timing error detector 10 detects a timing error based on three successive samples and provides the detected timing error to a loop filter 16. The output of the loop filter 16 controls a numerically controlled oscillator (NCO) 18 which adjusts the timing of the sampler 14 in accordance with the output of the loop filter 16.

The Gardner timing error detector 10 was originally designed for BPSK/QPSK receivers, but it can be shown that the Gardner timing error detector works successfully for higher order constellations. The Gardner timing error detector 10 typically uses two samples per symbol for its operation and is based on the transmitted pulse shape symmetry.

As shown in FIG. 2, the input to the Gardner timing error detector 10 is provided to an input of a first one sample delay 20 and to a positive input of a summer 22. The output of the first one sample delay 20 is provided to an input of a second one sample delay 24 and to one input of a multiplier 26. The output of the second one sample delay 24 is provided to a negative input of the summer 22, and the output of the summer 22 is provided to the other input of the multiplier 26.

The Gardner timing error detector 10 works well for a flat or clean channel with the assumption of a white Gaussian noise environment. However, the Gardner timing error detector 10 is sensitive to nulls in the spectrum of the received pulse. In particular, when a null exists at half the transmitted symbol rate, the accuracy of the timing indications produced by the Gardner timing error detector 10 is reduced.

The spectrum of the received pulse, which is the product of the spectrum of the transmitted pulse and the spectrum of the channel, will have a null at a particular frequency when the spectrum of the channel has a null at that frequency. Nulls in the channel spectrum can occur when the transmitted signal travels through multiple paths between the transmitter and the receiver. In this phenomenon, known as multi-path propagation, certain frequency components of the signals arriving at the receiver will add destructively (interfere) resulting in nulls in the spectrum at those frequencies. Multi-path propagation is typically present when, in addition to a direct path between the transmitter and the receiver, additional paths are present due to reflections of the transmitted signal off of objects such as buildings, terrain, and moving objects.

The present invention overcomes one or more of these or other problems.

SUMMARY OF THE INVENTION

According to one aspect of the present invention, a method of detecting a receiver timing error with respect to a received signal comprises the following: expanding the bandwidth of the received signal; and, determining the timing error based on the bandwidth expanded received signal, wherein the timing error is determined by use of a timing error detector employing at least one delay element.

According to another aspect of the present invention, a timing recovery loop comprises a sampler, a bandwidth expander, a timing error detector, a loop filter, and a sample controller. The sampler samples a received signal. The bandwidth expander expands the bandwidth of the sampled received signal. The timing error detector detects a timing error with respect to the bandwidth expanded received signal, and the timing error detector includes at least one delay element. The loop filter filters the detected timing error. The sample controller controls the sampler in response to the filtered and detected timing error.

According to still another aspect of the present invention, a timing recovery detector comprises a multiplier, a complex conjugate operator, a first delay element, and a timing error detector. The multiplier has first and second inputs and an output, the first input receives a received signal, and the output provides a multiplier output. The complex conjugate operator has an input and an output, the input of the complex conjugate operator receives the received signal, and the output of the complex conjugate operator provides the complex conjugate of the sampled received signal. The first delay element is between the output of the complex conjugate operator and the second input of the multiplier. The timing error detector detects a timing error with respect to the multiplier output, and the timing error detector includes at least one second delay element.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features and advantages will become more apparent from a detailed consideration of the invention when taken in conjunction with the drawings in which:

FIG. 1 illustrates a standard timing recovery loop utilizing a Gardner timing error detector;

FIG. 2 shows in more detail the Gardner timing error detector of FIG. 1;

FIG. 3 illustrates a timing recovery loop in accordance with an embodiment of the present invention;

FIG. 4 illustrates another timing error detector that can be used in the timing recovery loop of FIG. 3;

FIG. 5 illustrates still another timing error detector that can be used in the timing recovery loop of FIG. 3;

FIG. 6 illustrates the power spectrum for 8 VSB data modulation;

FIG. 7 shows the frequency response of the pre-filter of FIG. 3;

FIG. 8 illustrates an example of a matched filter that can be used for the complex matched filter of FIG. 3; and,

FIG. 9 illustrates an example of a pre-filter that can be used for the pre-filter of FIG. 3.

DETAILED DESCRIPTION

A timing recovery loop 30 shown in FIG. 3 receives a signal on an input 32. The timing recovery loop 30 may be, for example, an 8-VSB timing recovery loop. The received signal is sampled by a sampler 34, and the sampled signal is filtered by a complex matched filter 36. The filtered signal is processed by a bandwidth expander 38. The real part of the output of the bandwidth expander 38 is extracted at 42 and the extracted real part of the output of the bandwidth expander 38 is supplied to a pre-filter 44. The pre-filter 44 is a narrow band filter arranged to pass only the upper band edge of the output of the bandwidth expander 38 (i.e., not the lower band edge of the output of the bandwidth expander 38). The width of the passband of the pre-filter 40 may be, for example, approximately 50 kHz and the center of the passband may be, for example, 5.381 MHz. The received signal for a standard 6 MHz channel has the spectrum shown in FIG. 6. The frequency response of the pre-filter 44 is shown in FIG. 7.

An example of a matched filter that can be used for the complex matched filter 36 is shown in FIG. 8. The input of the matched filter shown in FIG. 8 is the input to the first Z⁻¹ delay element, and the output of the matched filter shown in FIG. 8 is the last summer. The inputs C₀ etc. are for the tap weights of the complex matched filter.

An example of a pre-filter that can be used for the pre-filter 40 is shown in FIG. 9. The input of the pre-filter shown in FIG. 9 is the input to the first summer, and the output of the pre-filter shown in FIG. 9 is the last summer. The inputs b₀, a₂, and b₂ are constants that define the band width and center for the pre-filter.

The output of the pre-filter 44 is provided to a timing error detector 46. The timing error detector 46 detects a timing error between the transmitter and receiver clocks and provides the detected timing error to a loop filter 48. The output of the loop filter 48 controls a numerically controlled oscillator 50 which adjusts the timing of the sampler 34 in accordance with the output of the loop filter 48.

The bandwidth expander 38 receives the output of the complex matched filter 36. The output of the complex matched filter 36 is supplied directly to one input of a multiplier 52 of the bandwidth expander 38. The complex conjugate of the output of the complex matched filter 36 is determined at 54, the complex conjugate of the output of the sampler 34 is delayed by a delay element 56, and the delayed complex conjugate of the output of the complex matched filter 36 is applied to a second input of the multiplier 52. The delay element 56 may have a delay of, for example, 0, T_(sym)/2, 3T_(sym)/2, etc., where the period T_(sym) is the symbol period in the 8 VSB digital television signal according to the ATSC Digital Television Standard.

The bandwidth expander 38 expands the width of the received signal in the frequency domain and, therefore, is referred to herein as a bandwidth expander. In the special case where the delay element 56 is set for a zero delay, the output of the multiplier 52 is the magnitude squared of the output of the complex matched filter 36.

An 8 VSB signal is a linear modulated 8-ary PAM signal with real-valued symbols s[k] and a complex pulse shape q(t). As discussed above, the power spectrum for 8 VSB data modulation is shown in FIG. 6. The real-valued symbols s[k] are uniformly distributed and are independent random variables with symbol levels {−7, −5, −3, −1, 1, 3, 5, 7}.

The output of a free running carrier recovery loop at 12 is given by the following equation:

$\begin{matrix} {{v(t)} = {^{{j\Delta}\; \omega \; t}\frac{1}{2}\begin{Bmatrix} {{\sum\limits_{k}{s\lbrack k\rbrack}\left\{ {\sum\limits_{i = 1}^{M}{\gamma_{i}{q\begin{pmatrix} {t - \tau_{i} -} \\ {kT}_{sym} \end{pmatrix}}^{- {j{\lbrack{{\omega_{c}\tau_{i}} - \varphi + \theta}\rbrack}}}}} \right\}} +} \\ {\frac{\hat{A}}{2}^{{- j}\hat{\theta}}} \end{Bmatrix}}} & (1) \end{matrix}$

where s[k] is the transmitted symbol stream, q_(R) and q_(I) are the real and imaginary parts of the complex square root raised cosine pulse q, Â and {circumflex over (θ)} are the average amplitude and phase of the pilot, φ is the transmitted carrier phase, Δω is the free running carrier frequency error, θ is the free running carrier phase of the numerical control oscillator 50, M is the number of multipaths in the channel, τ_(i) are the path delays of the multipaths in the channel, and γ_(i) are the real path gains.

For convenience in Gardner timing recovery, it may be assumed that the channel is an AWGN No Ghost channel where τ_(i) is set to 2, and where Δω=0. Based on equation (1) and these assumptions, the received signal is given by the following equation:

$\begin{matrix} {{r(t)} = {{\sum\limits_{k}{{s\lbrack k\rbrack}{q\left( {t - \tau - {kT}_{sym}} \right)}}} + {w(t)}}} & (2) \end{matrix}$

where w(t) is white Gaussian noise AWGN.

As shown in FIG. 3, the first operation following sampling in the timing recovery loop 30 is the matched filtering performed by complex matched filter 36. The output of the complex matched filter 36 is denoted y(t) and is given by the following equation:

$\begin{matrix} {{y(t)} = {\int_{- \infty}^{+ \infty}{{r(\lambda)}{q^{*}\left( {\lambda - t} \right)}{\lambda}}}} & (3) \end{matrix}$

Combining equations (2) and (3) produces the following equation:

$\begin{matrix} {{y(t)} = {{\sum\limits_{k}{{s\lbrack k\rbrack}{\hat{p}\left( {t - \tau - {k\; T_{sym}}} \right)}}} + {{w(t)}*{q^{*}\left( {- t} \right)}}}} & (4) \end{matrix}$

where {circumflex over (p)}(t) is the complex raised cosine pulse obtained by convolving the transmitted pulse shape q(t) with the matched filter impulse response q*(−t), and where the superscript * represents the complex conjugate.

Rewriting equation (4) produces the following equation:

$\begin{matrix} {{y(t)} = {{\sum\limits_{k}{{s\lbrack k\rbrack}{p\begin{pmatrix} {t - \tau -} \\ {k\; T_{sym}} \end{pmatrix}}^{{j2\pi}\frac{\; f_{sym}}{4}{({t - \tau - {k\; T_{sym}}})}}}} + {{w(t)}*{q^{*}\left( {- t} \right)}}}} & (5) \end{matrix}$

where p(t) the real part of the raised cosine pulse.

Ignoring noise, the operation performed by the bandwidth expander 38 is given by the following equation:

z(t)=y(t)y*(t−D)  (6)

where D represents the delay imposed by the delay element 56. The product z(t) given by equation (6) may be expanded in accordance with equation (5) to produce the following equation:

$\begin{matrix} \begin{matrix} {{z(t)} = {\sum\limits_{k}{\sum\limits_{l}{{s\lbrack k\rbrack}{s\lbrack l\rbrack}{p\left( {t - \tau - {k\; T_{sym}}} \right)}{p\left( {t - \tau - D - {lT}_{sym}} \right)}}}}} \\ {\left\{ {^{{j2\pi}\; \frac{f_{sym}}{4}{({t - \tau - {kT}_{sym}})}}^{{- {j2\pi}}\; \frac{f_{sym}}{4}{({t - \tau - {lT}_{sym} - D})}}} \right\}} \\ {= {\sum\limits_{k}{\sum\limits_{l}{{s\lbrack k\rbrack}{s\lbrack l\rbrack}{p\left( {t - \tau - {kT}_{sym}} \right)}{p\left( {t - \tau - D - {lT}_{sym}} \right)}}}}} \\ {\left\{ ^{{j2\pi}\; \frac{f_{sym}}{4}{({D + {{({l - k})}T_{sym}}})}} \right\}} \end{matrix} & (7) \end{matrix}$

If D=0, equation (7) is independent of any carrier phase offset, which allows passband timing recovery. However, other values of D are possible because equation (7) can still be considered to be carrier phase independent if it is assumed that the carrier phase slowly varies throughout the time interval D.

Therefore, the extracted real part of the output of the bandwidth expander 38 is denoted r(t) and is given by the following equation:

$\begin{matrix} \begin{matrix} {{r(t)} = {{Re}\left\{ {z(t)} \right\}}} \\ {= {\sum\limits_{k}{\sum\limits_{l}{{s\lbrack k\rbrack}{s\lbrack l\rbrack}{p\left( {t - \tau - {kT}_{sym}} \right)}{p\left( {t - \tau - D - {lT}_{sym}} \right)}}}}} \\ {{\cos\left( {2\pi \; \frac{f_{sym}}{4}\left( {D + {\left( {l - k} \right)T_{sym}}} \right)} \right.}} \end{matrix} & (8) \end{matrix}$

The timing error detector 46, when implemented as shown in FIG. 2, is given by the following equation:

$\begin{matrix} {{e\lbrack n\rbrack} = {{r\left\lbrack {{\left( {n - \frac{1}{2}} \right)T_{sym}} + {\hat{\tau}}_{n - 1}} \right\rbrack}\begin{Bmatrix} {{r\left\lbrack {{\left( {n - 1} \right)T_{sym}} + {\hat{\tau}}_{n - 1}} \right\rbrack} -} \\ {r\left\lbrack {{nT}_{sym} + {\hat{\tau}}_{n}} \right\rbrack} \end{Bmatrix}}} & (9) \end{matrix}$

When the signal represented by equation (8) is processed according to equation (9), the expected value of the result is given by the following equation:

$\begin{matrix} {{E\left\{ {e\lbrack n\rbrack} \right\}} = \begin{matrix} {{E\begin{Bmatrix} \begin{matrix} \begin{matrix} {\sum\limits_{k}{\sum\limits_{l}{C_{l}{s\lbrack k\rbrack}{s\lbrack l\rbrack}}}} \\ {p\begin{bmatrix} {{\left( {n - \frac{1}{2}} \right)T_{sym}} +} \\ {{\hat{\tau}}_{n - 1} - \tau - {kT}_{sym}} \end{bmatrix}} \end{matrix} \\ {p\begin{bmatrix} {{\left( {n - \frac{1}{2}} \right)T_{sym}} + {\hat{\tau}}_{n - 1} -} \\ {\tau - D - {lT}_{sym}} \end{bmatrix}} \end{matrix} \\ {\sum\limits_{i}{\sum\limits_{j}{C_{2}{s\lbrack \rbrack}{s\lbrack j\rbrack}}}} \\ {p\begin{bmatrix} {{\left( {n - 1} \right)T_{sym}} + {\hat{\tau}}_{n - 1}} \\ {{- \tau} - {\; T_{sym}}} \end{bmatrix}} \\ {p\begin{bmatrix} {{\left( {n - 1} \right)T_{sym}} + {\hat{\tau}}_{n - 1} -} \\ {\tau - D - {j\; T_{sym}}} \end{bmatrix}} \end{Bmatrix}} -} \\ {E\begin{Bmatrix} \begin{matrix} \begin{matrix} {\sum\limits_{k}{\sum\limits_{l}{C_{1}{s\lbrack k\rbrack}{s\lbrack l\rbrack}}}} \\ {p\begin{bmatrix} {{\left( {n - \frac{1}{2}} \right)T_{sym}} + {\hat{\tau}}_{n - 1} -} \\ {\tau - {kT}_{sym}} \end{bmatrix}} \end{matrix} \\ {p\begin{bmatrix} {{\left( {n - \frac{1}{2}} \right)T_{sym}} + {\hat{\tau}}_{n - 1} -} \\ {\tau - D - {lT}_{sym}} \end{bmatrix}} \end{matrix} \\ {\sum\limits_{i}{\sum\limits_{j}{C_{2}{s\lbrack \rbrack}{s\lbrack j\rbrack}}}} \\ {p\left\lbrack {{nT}_{sym} + {\hat{\tau}}_{n} - \tau - {\; T_{sym}}} \right\rbrack} \\ {p\left\lbrack {{nT}_{sym} + {\hat{\tau}}_{n} - D - {j\; T_{sym}}} \right\rbrack} \end{Bmatrix}} \end{matrix}} & (10) \\ {where} & \; \\ {C_{1} = {\cos \left( {2\pi \frac{\; f_{sym}}{4}\left( {D + {\left( {l - k} \right)T_{sym}}} \right)} \right)}} & (11) \\ {C_{2} = {\cos \left( {2\pi \frac{\; f_{sym}}{4}\left( {D + {\left( {j - } \right)T_{sym}}} \right)} \right)}} & (12) \end{matrix}$

The equation for the timing recovery loop shown in FIG. 3 has the form given by the following equation:

{circumflex over (τ)}_(n+1)={circumflex over (τ)}_(n) +γe{n}  (13)

where γ is the loop gain.

In order to further simplify equation (10), the following definitions can be made:

$\begin{matrix} {{E\left\{ {{s\lbrack k\rbrack}{s\lbrack l\rbrack}{s\lbrack \rbrack}{s\lbrack j\rbrack}} \right\}} = \left\{ \begin{matrix} \sigma_{s}^{4} & {{{for}\mspace{14mu} k} = {l = { = j}}} \\ 0 & {{{for}\mspace{14mu} k} \neq l \neq  \neq j} \end{matrix} \right.} & (14) \end{matrix}$

The quantity σ_(s) ², for example, may be the variance or power of the symbols. Thus, for VSB symbol values of ±7,5,3,1, σ_(s) ² can be computed as the square of (7*7)/4+(5*5)/4+(3*3)/4+(1*1)/4=(49+25+9+1)/4=84/4=21. Accordingly, σ_(s) ⁴=441.

The steady state performance of the timing recovery loop of FIG. 3 can then be analyzed as follows. In the steady state, τ_(n−1)=τ_(n)={circumflex over (τ)}. Also, τ−{circumflex over (τ)} may be defined as δ. Therefore, at steady state, and with δ defined as stated above, equation (10) may be rewritten as given by the following equation:

$\begin{matrix} {{{S(\delta)} = {{C^{2}\sigma_{s}^{4}{\sum\limits_{i}{{p\left\lbrack {{\left( { - \frac{1}{2}} \right)T_{sym}} - \delta} \right\rbrack}{p\left\lbrack {{\left( { - \frac{1}{2}} \right)T_{sym}} - \delta - D} \right\rbrack}{p\left\lbrack {{\left( { - 1} \right)T_{sym}} - \delta} \right)}{p\begin{bmatrix} {{\left( { - 1} \right)T_{sym}} -} \\ {\delta - D} \end{bmatrix}}}}} - {C^{2}\sigma_{s}^{4}{\sum\limits_{i}{{p\left\lbrack {{\left( { - \frac{1}{2}} \right)T_{sym}} - \delta} \right\rbrack}{p\begin{bmatrix} {{\left( { - \frac{1}{2}} \right)T_{sym}} -} \\ {\delta - D} \end{bmatrix}}{p\left\lbrack {{\; T_{sym}} - \delta} \right\rbrack}{p\left\lbrack {{\; T_{sym}} - \delta - D} \right\rbrack}}}}}}{where}} & (15) \\ {C = {\cos \left( {2\pi \frac{\; f_{sym}}{4}D} \right)}} & (16) \end{matrix}$

where τ is the actual timing offset, where {circumflex over (τ)} is the estimated timing offset, and where δ is the error between τ and {circumflex over (τ)}.

The analog version of equation (15) is given by the following equation:

$\begin{matrix} \begin{matrix} {{S(\delta)} = {C^{2}\sigma_{s}^{4}{\int_{t}{{p\left( {t - \frac{T_{sym}}{2} - \delta} \right)}{p\left( {t - \frac{T_{sym}}{2} - \delta - D} \right)}}}}} \\ {{{{p\left( {t - T_{sym} - \delta} \right)}{p\left( {t - T_{sym} - \delta - D} \right)}} - {C^{2}\sigma_{s}^{4}\int_{t}}}} \\ {{{p\left( {t - \frac{T_{sym}}{2} - \delta} \right)}{p\left( {t - \frac{T_{sym}}{2} - \delta - D} \right)}{p\left( {t - \delta} \right)}{p\left( {t - \delta - D} \right)}}} \\ {= {{C^{2}\sigma_{s}^{4}{\int_{t}\underset{\underset{h_{1}{({t - \frac{T_{sym}}{2}})}}{}}{\underset{\underset{h({({t - \frac{T_{sym}}{2}})}}{}}{{p\begin{pmatrix} {t -} \\ {\frac{T_{sym}}{2} - \delta} \end{pmatrix}}{p\begin{pmatrix} {t -} \\ {T_{sym} - \delta} \end{pmatrix}}}\underset{\underset{h{({t - \frac{T_{sym}}{2} - D})}}{}}{{p\begin{pmatrix} {t - \frac{T_{sym}}{2} -} \\ {\delta - D} \end{pmatrix}}{p\begin{pmatrix} {t -} \\ {T_{sym} -} \\ {\delta - D} \end{pmatrix}}}}}} -}} \\ {{C^{2}\sigma_{s}^{4}{\int_{t}\underset{\underset{h_{1}{(t)}}{}}{\underset{\underset{h{(t)}}{}}{{p\left( {t - \delta} \right)}{p\left( {t - \frac{T_{sym}}{2} - \delta} \right)}}\underset{\underset{h{({t - D})}}{}}{p\left( {t - \delta - D} \right){p\left( {t - \frac{T_{sym}}{2} - \delta - D} \right)}}}}}} \end{matrix} & (17) \end{matrix}$

According to Poisson's sum formula, the following equation is obtained:

$\begin{matrix} {{\sum\limits_{i}{h_{1}\left( {\; T_{sym}} \right)}} = {\frac{1}{T_{sym}}{\sum\limits_{i}{H_{1}\left( \frac{}{T_{sym}} \right)}}}} & (18) \end{matrix}$

which applies to any finite energy signal h(t) with Fourier Transform H(f). Identifying h(t) with

${{p\left( {t - \delta} \right)}{p\left( {t - \frac{T_{sym}}{2} - \delta} \right)}},$

and p(t) and P(f) as a Fourier Transform pair, H(f) can be calculated as given by the following equation:

$\begin{matrix} {{{H(f)} = {{\overset{.}{H}(f)}^{{- j}\; 2\pi \; f\; \delta}}}{where}} & (19) \\ {{{\overset{.}{H}(f)} = {\int_{- \infty}^{+ \infty}{{P(\upsilon)}{P\left( {f - \upsilon} \right)}^{{- j}\; {\pi\upsilon}\; T_{sym}}{\upsilon}}}}{{H_{1}(f)} = {F\left\{ {{h(t)}{h\left( {t - D} \right)}} \right\}}}} & (20) \\ {\mspace{65mu} {= {\int_{- \infty}^{+ \infty}{{H(\upsilon)}{H\left( {f - \upsilon} \right)}^{{- j}\; 2\pi \; \upsilon \; D}{\upsilon}}}}} & (21) \\ {\mspace{65mu} {= {\int_{- \infty}^{+ \infty}{{\overset{.}{H}(\upsilon)}^{{- j}\; 2{\pi\upsilon}\; \delta}{\overset{.}{H}\left( {f - \upsilon} \right)}^{{- {{j2\pi}{({f - \upsilon})}}}\delta}^{{- {j2\pi\upsilon}}\; D}{\upsilon}}}}} & (22) \\ {\mspace{65mu} {= {^{{- {j2\pi}}\; f\; \delta}\underset{\underset{\overset{\Cup}{H}{(f)}}{}}{\int_{- \infty}^{+ \infty}{{\overset{.}{H}(\upsilon)}{\overset{.}{H}\left( {f - \upsilon} \right)}^{{- {j2\pi\upsilon}}\; D}{\upsilon}}}}}} & (23) \\ {\mspace{65mu} {{= {{\overset{\Cup}{H}(f)}^{{- {j2\pi}}\; f\; \delta}}}{{Therefore},}}} & (24) \\ {{\sum\limits_{i}{h_{1}\left( {\; T_{sym}} \right)}} = {\frac{1}{T_{sym}}{\sum\limits_{i}{{\overset{\Cup}{H}\left( \frac{}{T_{sym}} \right)}^{{- {j2\pi}}\mspace{11mu} \frac{}{T_{sym}}\delta}}}}} & (25) \end{matrix}$

Assuming a raised cosine pulse bandwidth that is less than 1/(2T_(sym)) MHz so that P(f)=0 for |f|>1/(2T_(sym)) MHz, {hacek over (H)}(i/T_(sym))=0 for i≠−1, 0, +1. Therefore, equation (25) becomes the following equation:

$\begin{matrix} \begin{matrix} {{\sum\limits_{i}{h_{1}\left( {T}_{sym} \right)}} = {{\frac{1}{T_{sym}}{\overset{\Cup}{H}(0)}} + {\frac{1}{T_{sym}}{\overset{\Cup}{H}\left( {- \frac{1}{T_{sym}}} \right)}^{j\; 2\pi \; \frac{1}{T_{sym}}\delta}} +}} \\ {{\frac{1}{T_{sym}}{\overset{\Cup}{H}\left( \frac{1}{T_{sym}} \right)}^{{- j}\; 2\pi \; \frac{1}{T_{sym}}\delta}}} \\ {= {{\frac{1}{T_{sym}}{\overset{\Cup}{H}(0)}} + {\frac{2}{T_{sym}}{Re}\left\{ {{\overset{\Cup}{H}\left( \frac{1}{T_{sym}} \right)}^{{- j}\; 2\pi \; \frac{1}{T_{sym}}\delta}} \right\}}}} \end{matrix} & (26) \\ {{because}{\overset{\Cup}{H}\left( {- \frac{1}{T_{sym}}} \right)} = {{\overset{\Cup}{H}}^{*}\left( \frac{1}{T_{sym}} \right)}} & \; \end{matrix}$

which is shown below.

Following the same analysis given by equations (18)-(26), the first summation of equation (15) can be written according to the following equation:

${\sum\limits_{i}{h_{1}\left( {\left( { - \frac{1}{2}} \right)T_{sym}} \right)}} = {{\frac{1}{T_{sym}}{\overset{\Cup}{H}(0)}} - {\frac{2}{T_{sym}}{Re}\left\{ {{\overset{\Cup}{H}\left( \frac{1}{T_{sym}} \right)}^{{- j}\; 2\pi \; \frac{1}{T_{sym}}\delta}} \right\}}}$

and equation (15) now becomes the following equation:

$\begin{matrix} {{S(\delta)} = {{- \frac{4\; C^{2}\sigma_{s}^{4}}{T_{sym}}}{Re}\left\{ {{\overset{\Cup}{H}\left( \frac{1}{T_{sym}} \right)}^{{- {j2}}\; \pi \; \frac{1}{T_{sym}}\delta}} \right\}}} & (27) \end{matrix}$

Equation (27) defines the S-curve of the timing error detector 46. The S-curve is the expected value of the output of the timing error detector 46. In order to further simplify equation (27), the following equations may be noted:

$\begin{matrix} \begin{matrix} {{\overset{\Cup}{H}\left( \frac{1}{T_{sym}} \right)} = {\int_{- \infty}^{+ \infty}{{\overset{.}{H}(\upsilon)}{\overset{.}{H}\left( {\frac{1}{T_{sym}} - \upsilon} \right)}^{{- j}\; 2\pi \; \upsilon \; D}{\upsilon}}}} \\ {= {^{{- j}\frac{\pi}{T_{sym}}D}\int_{- \infty}^{+ \infty}}} \\ {{{\overset{.}{H}\left( {\frac{1}{2T_{sym}} + f} \right)}^{j\; 2\pi \; {fD}}{f}}} \end{matrix} & (28) \\ \begin{matrix} {{\overset{\Cup}{H}\left( {- \frac{1}{T_{sym}}} \right)} = {\int_{- \infty}^{+ \infty}{{\overset{.}{H}(\upsilon)}{H\left( {{- \frac{1}{T_{sym}}} - \upsilon} \right)}^{{- j}\; 2\pi \; \upsilon \; D}{\upsilon}}}} \\ {= {^{\;^{j\frac{\pi}{T_{sym}}D}}{\int_{- \infty}^{+ \infty}{{\overset{.}{H}\left( {{- \frac{1}{2T_{sym}}} + f} \right)}{\overset{.}{H}\left( {{- \frac{1}{2T_{sym}}} - f} \right)}}}}} \\ {{^{{- {j2\pi}}\; {fD}}{f}}} \end{matrix} & (29) \\ \begin{matrix} {{\overset{.}{H}(f)} = {F\left\{ \underset{{{symmetric}{({even})}}{around}\mspace{14mu} {T_{sym}/4}}{\underset{}{{p(t)}{p\left( {t - \frac{T_{sym}}{2}} \right)}}} \right\}}} \\ {= {F\left\{ \underset{\underset{{a{(t)}};{{symmetric}{({even})}}}{}}{p\left( {t + \frac{T_{sym}}{4}} \right){p\left( {t - \frac{T_{sym}}{4}} \right)}} \right\} ^{{- {j2\pi}}\; f\; \frac{T_{sym}}{4}}}} \\ {= {\underset{{real},{even}}{\underset{}{A(f)}}^{{- {j\pi}}\; f\; \frac{T_{sym}}{2}}}} \end{matrix} & (30) \\ {{where}{{A(f)} = {F\left\{ {a(t)} \right\}}}} & \; \end{matrix}$

where F denotes Fourier Transform.

It is noted that A(f) is even and real because a(t) has even symmetry since p(t) is even. Substituting equation (30) into equation (28) produces the following equation:

$\begin{matrix} \begin{matrix} {{\overset{\Cup}{H}\left( \frac{1}{T_{sym}} \right)} = {{- {j}^{{- j}\frac{\pi}{T_{sym}}D}}{\int_{- \infty}^{+ \infty}\underset{\underset{{even}\mspace{14mu} {real}\mspace{14mu} {function}}{}}{{A\left( {\frac{1}{2T_{sym}} - f} \right)}{A\left( {\frac{1}{2T_{sym}} + f} \right)}}}}} \\ {{^{{j2\pi}\; f\; D}{f}}} \\ {= {{- {j}^{{- j}\frac{\pi}{T_{sym}}D}}{\int_{- \infty}^{+ \infty}{{A\left( {\frac{1}{2T_{sym}} - f} \right)}{A\left( {\frac{1}{2T_{sym}} + f} \right)}}}}} \\ {{\cos \left\{ {2\pi \; {fD}} \right\} {f}}} \\ {= {{- {j}^{{- j}\frac{\pi}{T_{sym}}D}}K}} \end{matrix} & (31) \end{matrix}$

where K is defined according to the following equation:

$\begin{matrix} {K = {\int_{- \infty}^{+ \infty}{{A\left( {\frac{1}{2T_{sym}} - f} \right)}{A\left( {\frac{1}{2T_{sym}} + f} \right)}{\cos \left( {2\pi \; {fD}} \right)}}}} & (32) \end{matrix}$

Similarly, by substituting equation (30) into equation (29), the following equation is obtained:

$\begin{matrix} \begin{matrix} {{\overset{\Cup}{H}\left( {- \frac{1}{T_{sym}}} \right)} = {{j}^{j\frac{\pi}{T_{sym}}D}{\int_{- \infty}^{+ \infty}\underset{\underset{{even}\mspace{14mu} {real}\mspace{14mu} {funtion}}{}}{{A\left( {\frac{1}{2T_{sym}} - f} \right)}{A\left( {\frac{1}{2T_{sym}} + f} \right)}}}}} \\ {{^{{- {j2\pi}}\; {fD}}{f}}} \\ {= {{j}^{j\frac{\pi}{T_{sym}}D}{\int_{- \infty}^{+ \infty}{{A\left( {\frac{1}{2T_{sym}} - f} \right)}{A\left( {\frac{1}{2T_{sym}} + f} \right)}}}}} \\ {{\cos \left\{ {2\pi \; {fD}} \right\} {f}}} \\ {= {{j}^{j\frac{\pi}{T_{sym}}D}K}} \\ {= {{\overset{\Cup}{H}}^{*}\left( \frac{1}{T_{sym}} \right)}} \end{matrix} & (33) \end{matrix}$

By substituting equation (31) into equation (27), the following equation is obtained:

$\begin{matrix} {{S(\delta)} = {\frac{4C^{2}\sigma_{s}^{4}K}{T_{sym}}{\sin \left( {\frac{2\pi}{T_{sym}}\left( {\delta + \frac{D}{2}} \right)} \right)}}} & (34) \end{matrix}$

It can be seen that the S-curve of the timing error detector 46 has the period T_(sym) and passes through the origin at δ=0 for D=0. The amplitude of the S-curve is proportional to K, which depends on the rolloff factor α. As α decreases, K decreases, and if K decreases sufficiently, the amplitude of the S-curve can become inadequate for the time tracking operation.

K depends on A(f) which is the Fourier transform of a(t) which is defined in equation (33) to be a function of p(t), and p(t) is the real part of the raised cosine pulse which in turn is determined by the rolloff factor α. The rolloff factor α is a fixed constant given in the digital television standard. The rolloff factor α is set to be sufficiently large to have an adequate S-curve amplitude.

Certain modifications of the present invention have been discussed above. Other modifications of the present invention will occur to those practicing in the art of the present invention. For example, the timing error detector 10 as shown in FIG. 2 may be used for the timing error detector 46 in the timing recovery loop 30. However, other timing error detectors can be used for the timing error detector 46 in the timing recovery loop 30.

For example, a timing error detector 60 shown in FIG. 4 is another timing error detector that may be used for the timing error detector 46 of FIG. 3. The timing error detector 60 is a modification of the timing error detector 10. The input to the timing error detector 60 is provided to an input of a first one sample delay 62 and to a positive input of a summer 64. The output of the first one sample delay 62 is provided to an input of a second one sample delay 66 and to a sign extractor 68. The output of the second one sample delay 66 is provided to a negative input of the summer 64, and the output of the summer 64 is provided to one input of a multiplier 70. An output of the sign extractor 68 is provided the other input of the multiplier 70. The sign extractor 68 provides a +1 or a −1 to the multiplier 70 depending upon whether the output of the first one sample delay 62 is positive or negative, respectively.

Another example of a timing error detector that may be used for the timing error detector 46 of FIG. 3 is a timing error detector 80 shown in FIG. 5. The timing error detector 80 is another modification of the timing error detector 10. The input to the timing error detector 80 is provided to an input of a first one sample delay 82 and to a positive input of a summer 84. The output of the first one sample delay 82 is provided to an input of a second one sample delay 86 and to an input of a gain element 88. The output of the second one sample delay 86 is provided to a negative input of the summer 84, and the output of the summer 84 is provided to one input of a multiplier 90. The gain element 88 applies a constant gain C to the output of the first one sample delay 82. A hyperbolic tangent function 92 determines the hyperbolic tangent of the output of the gain element 88 and provides this the hyperbolic tangent to the other input of the multiplier 90.

The timing recovery of the present invention is applicable to any linear digital modulation techniques. However, the present invention as particularly disclosed herein is applied to the 8 VSB data modulation scheme, which is currently being used for terrestrial high definition digital television transmissions.

Accordingly, the description of the present invention is to be construed as illustrative only and is for the purpose of teaching those skilled in the art the best mode of carrying out the invention. The details may be varied substantially without departing from the spirit of the invention, and the exclusive use of all modifications which are within the scope of the appended claims is reserved. 

1-24. (canceled)
 25. A method of detecting a timing error in connection with a signal comprising: delaying the signal to produce a first delayed output; delaying the first delayed output to produce a second delayed output; subtracting the second delayed output from the signal to produce a subtraction output; extracting a characteristic of the first delayed output; and, multiplying the characteristic and the subtraction output to produce the timing error.
 26. The method of claim 25 wherein the extracting of a characteristic of the first delayed output comprises extracting a sign from the first delayed output, and wherein the multiplying of the characteristic and the subtraction output to produce the timing error comprises multiplying the sign and the subtraction output to produce the timing error.
 27. The method of claim 25 wherein the extracting of a characteristic of the first delayed output comprises extracting a hyperbolic tangent of the first delayed output, and wherein the multiplying of the characteristic and the subtraction output to produce the timing error comprises multiplying the hyperbolic tangent and the subtraction output to produce the timing error.
 28. A timing error detector that detects a timing error in connection with a signal comprising: a first delay that delays the signal to produce a first delayed output; a second delay that delays the first delayed output to produce a second delayed output; a subtractor that subtracts the second delayed output from the signal to produce a subtraction output; an extractor that extracts a characteristic of the first delayed output; and, a multiplier that multiplies the characteristic and the subtraction output to produce the timing error.
 29. The timing error detector of claim 28 wherein the extractor that extracts a characteristic of the first delayed output comprises an extractor that extracts a sign from the first delayed output, and wherein the multiplier that multiplies the characteristic and the subtraction output to produce the timing error comprises a multiplier that multiplies the sign and the subtraction output to produce the timing error.
 30. The timing error detector of claim 28 wherein the extractor that extracts a characteristic of the first delayed output comprises an extractor that extracts a hyperbolic tangent of the first delayed output, and wherein the multiplier that multiplies the characteristic and the subtraction output to produce the timing error comprises a multiplier that multiplies the hyperbolic tangent and the subtraction output to produce the timing error. 